home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 2 / ETO Development Tools 2.iso / Tools - Objects / MacApp / MacApp CD Release / MacApp 2.0.1 (Many Libraries) / Examples / DemoDialogs / UDemoDialogs.p < prev   
Encoding:
Text File  |  1990-10-25  |  8.5 KB  |  301 lines  |  [TEXT/MPS ]

  1. {[a-,body+,h-,o=100,r+,rec+,t=4,u+,#+,j=20/57/1$,n-]}
  2. { Copyright © 1988 - 1990 by Apple Computer, Inc. All rights reserved. }
  3.  
  4. UNIT UDemoDialogs;
  5.  
  6.     INTERFACE
  7.  
  8.         USES
  9.  
  10.             { • MacApp }
  11.             UMacApp,
  12.  
  13.             { • Building Blocks }
  14.             UPrinting, UGridView, UTEView, UDialog,
  15.  
  16.             { • Required for this unit's interface }
  17.             Sane,
  18.  
  19.             { • Implementation use }
  20.             ToolUtils, Fonts, Resources, Packages;
  21.  
  22.         CONST
  23.  
  24.             { Command numbers }
  25.             cMakePicture        = 1000;
  26.  
  27.             kSignature            = 'SS11';                { Application signature }
  28.             kFileType            = 'SF11';                { File-type code used for document files
  29.                                                          created by this application }
  30.             kTestWindowID        = 1001;                 { This is passed to NewSimpleWindow as the
  31.                                                          resource ID of the the WIND Resource which
  32.                                                          defines the window for this application's
  33.                                                          documents }
  34.  
  35.             kMaxFonds            = 100;                    { Max number of FONDs the FontList holds }
  36.  
  37.         TYPE
  38.             CalcOperator        = (noOperator, divOperator, mulOperator, subOperator, addOperator);
  39.  
  40.             FontList            = ARRAY [1..kMaxFonds] OF INTEGER; { FOND resource IDs }
  41.             FontListPtr         = ^FontList;
  42.  
  43.             TTestApplication    = OBJECT (TApplication)
  44.  
  45.                 PROCEDURE TTestApplication.ITestApplication(itsMainFileType: OSType);
  46.                 { Initializes the application and globals. }
  47.  
  48.                 FUNCTION TTestApplication.DoMenuCommand(aCmdNumber: CmdNumber): TCommand; OVERRIDE;
  49.  
  50.                 PROCEDURE TTestApplication.DoSetupMenus; OVERRIDE;
  51.  
  52.                 PROCEDURE TTestApplication.Fields(PROCEDURE
  53.                                              DoToField(fieldName: Str255;
  54.                                                        fieldAddr: Ptr;
  55.                                                        fieldType: INTEGER)); OVERRIDE;
  56.                 END;
  57.  
  58.             TNumbersView        = OBJECT (TView)
  59.  
  60.                 PROCEDURE TNumbersView.Draw(area: Rect); OVERRIDE;
  61.  
  62.                 PROCEDURE TNumbersView.Fields(PROCEDURE
  63.                                              DoToField(fieldName: Str255;
  64.                                                        fieldAddr: Ptr;
  65.                                                        fieldType: INTEGER)); OVERRIDE;
  66.                 END;
  67.  
  68.             TMonthlyDialog        = OBJECT (TDialogView)
  69.  
  70.                 FUNCTION TMonthlyDialog.DoKeyCommand(ch: CHAR;
  71.                                                      aKeyCode: INTEGER;
  72.                                                      VAR info: EventInfo): TCommand; OVERRIDE;
  73.  
  74.                 PROCEDURE TMonthlyDialog.DismissDialog(dismisser: IDType); OVERRIDE;
  75.  
  76.                 PROCEDURE TMonthlyDialog.StuffValues;
  77.  
  78.                 PROCEDURE TMonthlyDialog.Fields(PROCEDURE
  79.                                              DoToField(fieldName: Str255;
  80.                                                        fieldAddr: Ptr;
  81.                                                        fieldType: INTEGER)); OVERRIDE;
  82.                 END;
  83.  
  84.             TModelessMarkDialog = OBJECT (TDialogView)
  85.  
  86.                 PROCEDURE TModelessMarkDialog.DoChoice(origView: TView;
  87.                                                        itsChoice: INTEGER); OVERRIDE;
  88.  
  89.                 PROCEDURE TModelessMarkDialog.Fields(PROCEDURE
  90.                                              DoToField(fieldName: Str255;
  91.                                                        fieldAddr: Ptr;
  92.                                                        fieldType: INTEGER)); OVERRIDE;
  93.                 END;
  94.  
  95.             TFontListView        = OBJECT (TTextListView)
  96.  
  97.                 fFontList:            FontListPtr;        { font resource ids }
  98.  
  99.                 PROCEDURE TFontListView.InitFontList;
  100.                 { Build an array of ids of font resources whose names are in alphabetical order }
  101.  
  102.                 PROCEDURE TFontListView.Free; OVERRIDE;
  103.                 { Make sure the font list gets freed }
  104.  
  105.                 PROCEDURE TFontListView.GetItemText(anItem: INTEGER;
  106.                                                     VAR aString: Str255); OVERRIDE;
  107.  
  108.                 PROCEDURE TFontListView.SelectItem(anItem: INTEGER;
  109.                                                    extendSelection, highlight,
  110.                     select: BOOLEAN); OVERRIDE;
  111.  
  112.                 PROCEDURE TFontListView.Fields(PROCEDURE
  113.                                              DoToField(fieldName: Str255;
  114.                                                        fieldAddr: Ptr;
  115.                                                        fieldType: INTEGER)); OVERRIDE;
  116.                 END;
  117.  
  118.             TSizeListView        = OBJECT (TTextListView)
  119.  
  120.                 fSelection:         INTEGER;
  121.                 fSelectedSize:        INTEGER;
  122.                 fFondID:            INTEGER;
  123.  
  124.                 PROCEDURE TSizeListView.GetItemText(anItem: INTEGER;
  125.                                                     VAR aString: Str255); OVERRIDE;
  126.  
  127.                 PROCEDURE TSizeListView.InstallFontFamily(theFondID: INTEGER);
  128.  
  129.                 PROCEDURE TSizeListView.SelectItem(anItem: INTEGER;
  130.                                                    extendSelection, highlight,
  131.                     select: BOOLEAN); OVERRIDE;
  132.  
  133.                 PROCEDURE TSizeListView.SetNumberOfItems(aNumber: INTEGER);
  134.  
  135.                 PROCEDURE TSizeListView.Fields(PROCEDURE
  136.                                              DoToField(fieldName: Str255;
  137.                                                        fieldAddr: Ptr;
  138.                                                        fieldType: INTEGER)); OVERRIDE;
  139.                 END;
  140.  
  141.             TPageSetupDialog    = OBJECT (TDialogView)
  142.  
  143.                 fOrientation:        VHSelect;
  144.  
  145.                 PROCEDURE TPageSetupDialog.DoChoice(origView: TView;
  146.                                                     itsChoice: INTEGER); OVERRIDE;
  147.  
  148.                 PROCEDURE TPageSetupDialog.Fields(PROCEDURE
  149.                                              DoToField(fieldName: Str255;
  150.                                                        fieldAddr: Ptr;
  151.                                                        fieldType: INTEGER)); OVERRIDE;
  152.                 END;
  153.  
  154.             TRadioIcon            = OBJECT (TIcon)
  155.  
  156.                 PROCEDURE TRadioIcon.TrackMouse(aTrackPhase: TrackPhase;
  157.                                                 VAR anchorPoint, previousPoint, nextPoint: VPoint;
  158.                                                 mouseDidMove: BOOLEAN); OVERRIDE;
  159.  
  160.                 PROCEDURE TRadioIcon.Fields(PROCEDURE
  161.                                              DoToField(fieldName: Str255;
  162.                                                        fieldAddr: Ptr;
  163.                                                        fieldType: INTEGER)); OVERRIDE;
  164.                 END;
  165.  
  166.             THomeBrewDialog     = OBJECT (TDialogView)
  167.  
  168.                 FUNCTION THomeBrewDialog.DoSetCursor(localPoint: Point;
  169.                                                      cursorRgn: RgnHandle): BOOLEAN; OVERRIDE;
  170.  
  171.                 FUNCTION THomeBrewDialog.HandleCursor(theMouse: VPoint;
  172.                                                       cursorRgn: RgnHandle): TView; OVERRIDE;
  173.  
  174.                 PROCEDURE THomeBrewDialog.Fields(PROCEDURE
  175.                                              DoToField(fieldName: Str255;
  176.                                                        fieldAddr: Ptr;
  177.                                                        fieldType: INTEGER)); OVERRIDE;
  178.                 END;
  179.  
  180.             TArrowsControl        = OBJECT (TPicture)
  181.  
  182.                 fLastChange:        LONGINT;            { tick count of last call to DoChoice }
  183.  
  184.                 PROCEDURE TArrowsControl.IRes(itsDocument: TDocument;
  185.                                               itsSuperView: TView;
  186.                                               VAR itsParams: Ptr); OVERRIDE;
  187.  
  188.                 PROCEDURE TArrowsControl.TrackMouse(aTrackPhase: TrackPhase;
  189.                                                     VAR anchorPoint, previousPoint,
  190.                                                     nextPoint: VPoint;
  191.                                                     mouseDidMove: BOOLEAN); OVERRIDE;
  192.  
  193.                 PROCEDURE TArrowsControl.Fields(PROCEDURE
  194.                                              DoToField(fieldName: Str255;
  195.                                                        fieldAddr: Ptr;
  196.                                                        fieldType: INTEGER)); OVERRIDE;
  197.                 END;
  198.  
  199.             TTemperatureCluster = OBJECT (TCluster)
  200.  
  201.                 PROCEDURE TTemperatureCluster.DoChoice(origView: TView;
  202.                                                        itsChoice: INTEGER); OVERRIDE;
  203.                 FUNCTION TTemperatureCluster.GetValue: LONGINT;
  204.  
  205.                 PROCEDURE TTemperatureCluster.SetValue(newValue: LONGINT;
  206.                                                        redraw: BOOLEAN);
  207.  
  208.                 PROCEDURE TTemperatureCluster.Fields(PROCEDURE
  209.                                              DoToField(fieldName: Str255;
  210.                                                        fieldAddr: Ptr;
  211.                                                        fieldType: INTEGER)); OVERRIDE;
  212.                 END;
  213.  
  214.             TTemperatureConversionCluster = OBJECT (TCluster)
  215.  
  216.                 PROCEDURE TTemperatureConversionCluster.DoChoice(origView: TView;
  217.                                                                  itsChoice: INTEGER); OVERRIDE;
  218.  
  219.                 PROCEDURE TTemperatureConversionCluster.Fields(PROCEDURE
  220.                                              DoToField(fieldName: Str255;
  221.                                                        fieldAddr: Ptr;
  222.                                                        fieldType: INTEGER)); OVERRIDE;
  223.                 END;
  224.  
  225.             TSlider             = OBJECT (TPicture)
  226.  
  227.                 fValue:             INTEGER;
  228.                 fKnobPicture:        PicHandle;
  229.                 fKnobRect:            Rect;
  230.                 fMinTop:            INTEGER;
  231.                 fMaxTop:            INTEGER;
  232.  
  233.                 PROCEDURE TSlider.IRes(itsDocument: TDocument;
  234.                                        itsSuperView: TView;
  235.                                        VAR itsParams: Ptr); OVERRIDE;
  236.  
  237.                 FUNCTION TSlider.ContainsMouse(theMouse: VPoint): BOOLEAN; OVERRIDE;
  238.  
  239.                 PROCEDURE TSlider.Draw(area: Rect); OVERRIDE;
  240.  
  241.                 PROCEDURE TSlider.DrawKnob;
  242.  
  243.                 PROCEDURE TSlider.GetKnobRect(VAR knobRect: Rect);
  244.  
  245.                 PROCEDURE TSlider.TrackMouse(aTrackPhase: TrackPhase;
  246.                                              VAR anchorPoint, previousPoint, nextPoint: VPoint;
  247.                                              mouseDidMove: BOOLEAN); OVERRIDE;
  248.  
  249.                 PROCEDURE TSlider.Fields(PROCEDURE
  250.                                              DoToField(fieldName: Str255;
  251.                                                        fieldAddr: Ptr;
  252.                                                        fieldType: INTEGER)); OVERRIDE;
  253.                 END;
  254.  
  255.             TSumStaticText        = OBJECT (TStaticText)
  256.  
  257.                 PROCEDURE TSumStaticText.Draw(area: Rect); OVERRIDE;
  258.  
  259.                 PROCEDURE TSumStaticText.Fields(PROCEDURE
  260.                                              DoToField(fieldName: Str255;
  261.                                                        fieldAddr: Ptr;
  262.                                                        fieldType: INTEGER)); OVERRIDE;
  263.                 END;
  264.  
  265.             TCalcDialog         = OBJECT (TPicture)
  266.  
  267.                 fSum:                Extended;
  268.                 fArgument:            Extended;
  269.                 fOperator:            CalcOperator;
  270.                 fDecimalPoint:        BOOLEAN;
  271.                 fRestart:            BOOLEAN;
  272.  
  273.                 PROCEDURE TCalcDialog.DoChoice(origView: TView;
  274.                                                itsChoice: INTEGER); OVERRIDE;
  275.  
  276.                 FUNCTION TCalcDialog.DoKeyCommand(ch: CHAR;
  277.                                                   aKeyCode: INTEGER;
  278.                                                   VAR info: EventInfo): TCommand; OVERRIDE;
  279.  
  280.                 PROCEDURE TCalcDialog.ClearSum;
  281.  
  282.                 PROCEDURE TCalcDialog.FetchValue(VAR aValue: Extended);
  283.  
  284.                 PROCEDURE TCalcDialog.SetValue;
  285.  
  286.                 PROCEDURE TCalcDialog.TotalSum(newOperator: CalcOperator);
  287.  
  288.                 PROCEDURE TCalcDialog.NewDigit(theNumber: CHAR);
  289.  
  290.                 PROCEDURE TCalcDialog.Fields(PROCEDURE
  291.                                              DoToField(fieldName: Str255;
  292.                                                        fieldAddr: Ptr;
  293.                                                        fieldType: INTEGER)); OVERRIDE;
  294.                 END;
  295.  
  296.     IMPLEMENTATION
  297.  
  298.         {$I UDemoDialogs.inc1.p}
  299.  
  300. END.
  301.